package com.easyidea.its.domain.service.system;

import java.util.Collection;
import java.util.List;

import com.easyidea.its.domain.model.system.Permission;
import com.easyidea.its.domain.model.system.Role;
import com.easyidea.its.domain.service.base.BaseService;

public interface RoleService extends BaseService<Role>{
	/**
	 * 根据状态分页查询角色列表
	 * @param roleName TODO
	 * @param status
	 * @param start
	 * @param pageSize
	 * 
	 * @return
	 */
	Collection<Role> getPlatformRolesByStatus(String roleName, Integer status, int start, int pageSize);

	/**
	 * 根据状态查询角色总数
	 * @param roleName TODO
	 * @param status
	 * 
	 * @return
	 */
	int getPlatformRoleCountByStatus(String roleName, Integer status);

	/**
	 * 根据角色id删除关联权限
	 * 
	 * @param roleId
	 * @return
	 */
	int deleteRoleRelationPermissionsByRoleId(Integer roleId);
	/**
	 * 删除角色
	 * @param id
	 */
	void deletePlatformRoleById(Integer id);
	/**
	 * 取平台角色列表
	 * @return
	 */
	List<Role> getAllRoles();	
}
